home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / gnu / include / incl98.zoo / unistd.h < prev    next >
C/C++ Source or Header  |  1994-02-22  |  6KB  |  185 lines

  1. #ifndef _UNISTD_H
  2. #define _UNISTD_H
  3.  
  4. /* NOTE:
  5.  * in prototypes used here, do *not* use things
  6.  * like size_t, uid_t, etc., since these
  7.  * may not be defined. Use the macros
  8.  * from <compiler.h> instead.
  9.  */
  10. #ifndef _COMPILER_H
  11. #include <compiler.h>
  12. #endif
  13.  
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17.  
  18. /* see Posix standard -- 1003.1 sect 2.10 */
  19.  
  20. #ifndef NULL
  21. #define NULL __NULL
  22. #endif
  23.  
  24. #ifndef F_OK
  25. /* file access stuff */
  26. #define    F_OK            0
  27. #define    X_OK            1
  28. #define    W_OK            2
  29. #define    R_OK            4
  30. #endif
  31.  
  32. #ifndef SEEK_SET
  33. /* lseek() origins */
  34. #define    SEEK_SET    0        /* from beginning of file */
  35. #define    SEEK_CUR    1        /* from current location */
  36. #define    SEEK_END    2        /* from end of file */
  37. #endif
  38.  
  39. #define _POSIX_JOB_CONTROL
  40. #if 0
  41. #define _POSIX_VERSION        0L        /* <- NON-CONFORMING */
  42. #endif
  43. #define _POSIX_CHOWN_RESTRICTED 0
  44. #define _POSIX_VDISABLE        0
  45.  
  46. #if 0                    /* this depends on the file system */
  47. #define _POSIX_NO_TRUNC        -1
  48. #endif
  49.  
  50. /* 1003.1 section 8.2.1.2 */
  51. #define STDIN_FILENO    0
  52. #define STDOUT_FILENO    1
  53. #define STDERR_FILENO    2
  54.  
  55. /* sysconf() values */
  56. #define _SC_LAST    -1    /* max limit # for sysconf - NOT POSIX */
  57. #define _SC_MEMR_MAX    0    /* memory regions per process - NOT POSIX */
  58. #define _SC_ARG_MAX    1    /* max length of cmdln - NOT quite POSIX */
  59. #define _SC_OPEN_MAX    2    /* max # of open files per process - POSIX */
  60. #define _SC_NGROUPS_MAX    3    /* max # supp gids - POSIX */
  61. #define _SC_CHILD_MAX    4    /* max # processes/user - NOT quite POSIX */
  62.  
  63. /* pathconf() values */
  64. #define _PC_LAST    -1    /* max limit # for pathconf - POSIX (!?) */
  65. #define _PC_IOPEN_MAX    0    /* internal limit on open files - NOT POSIX */
  66. #define _PC_LINK_MAX    1    /* max # of links - POSIX */
  67. #define _PC_PATH_MAX    2    /* max len of a full pathname - POSIX */
  68. #define _PC_NAME_MAX    3    /* max len of individual name - POSIX */
  69. #define _PC_PIPE_BUF    4    /* bytes written atomically to fifo - POSIX */
  70. #define _PC_NO_TRUNC    5    /* filename truncation - POSIX */
  71.  
  72. #ifdef __MINT__
  73. # ifndef _POSIX_SOURCE
  74. /* flock() commands */
  75. #  define F_ULOCK    0    /* unlock */
  76. #  define F_LOCK    1    /* lock */
  77. #  define F_TLOCK    2    /* test and lock (non-blocking) */
  78. #  define F_TEST    3    /* test */
  79. __EXTERN int        lockf    __PROTO((int, int, long));
  80. # endif
  81. #endif /* __MINT__ */
  82.  
  83. __EXTERN __EXITING _exit    __PROTO((int)) __NORETURN;
  84. __EXTERN int    access    __PROTO((const char *, int));
  85. __EXTERN unsigned alarm    __PROTO((unsigned));
  86. __EXTERN int    chdir    __PROTO((const char *));
  87. __EXTERN int    chown    __PROTO((const char *, int, int));
  88. __EXTERN int    close    __PROTO((int));
  89. __EXTERN int    dup    __PROTO((int));
  90. __EXTERN int    dup2    __PROTO((int, int));
  91. __EXTERN int    execl    __PROTO((const char *, ...));
  92. __EXTERN int    execle    __PROTO((const char *, ...));
  93. __EXTERN int    execlp    __PROTO((const char *, ...));
  94. __EXTERN int    execv    __PROTO((const char *, char *const *));
  95. __EXTERN int    execve    __PROTO((const char *, char *const *, char *const *));
  96. __EXTERN int    execvp    __PROTO((const char *, char *const *));
  97. __EXTERN int    fork    __PROTO((void));
  98. __EXTERN char *    getcwd    __PROTO((char *, int));
  99. __EXTERN _GID_T    getegid    __PROTO((void));
  100. __EXTERN _UID_T    geteuid    __PROTO((void));
  101. __EXTERN _GID_T    getgid    __PROTO((void));
  102. __EXTERN int    getgroups __PROTO((int, _GID_T *));
  103. __EXTERN char *    getlogin __PROTO((void));
  104. __EXTERN int    getpid    __PROTO((void));
  105. __EXTERN int    getppid    __PROTO((void));
  106. __EXTERN _UID_T    getuid    __PROTO((void));
  107. __EXTERN int    isatty    __PROTO((int));
  108. __EXTERN int    link    __PROTO((const char *oldname, const char *newname));
  109. __EXTERN long    lseek    __PROTO((int, long, int));
  110. __EXTERN int    pause    __PROTO((void));
  111. __EXTERN int    pipe    __PROTO((int *));
  112. __EXTERN long    pathconf __PROTO((const char *, int));
  113. __EXTERN int    rmdir    __PROTO((const char *));
  114. __EXTERN int    read    __PROTO((int, void *, unsigned));
  115. __EXTERN int    setgid    __PROTO((int));
  116. __EXTERN int    setuid    __PROTO((int));
  117. __EXTERN unsigned sleep    __PROTO((unsigned int));
  118. __EXTERN long    sysconf    __PROTO((int));
  119. __EXTERN char *    ttyname    __PROTO((int));
  120. __EXTERN int    unlink    __PROTO((const char *));
  121. __EXTERN int    write    __PROTO((int, const void *, unsigned));
  122.  
  123. #ifndef _POSIX_SOURCE
  124. __EXTERN int    _bsd_getpgrp __PROTO((int));
  125. __EXTERN int    _bsd_setpgrp __PROTO((int, int));
  126. __EXTERN char *    getwd    __PROTO((char *));
  127. __EXTERN int    getopt    __PROTO((int, char * const *, const char *));
  128. __EXTERN int    getpagesize __PROTO((void));
  129. __EXTERN char *    getpass    __PROTO((const char *prompt));
  130. __EXTERN char *    initstate __PROTO((unsigned int seed, char *arg_state, int n));
  131.  
  132. /* be careful with this and Gcc, where strings are really constants */
  133. __EXTERN char *    mktemp    __PROTO((char *));
  134.  
  135. __EXTERN void    psignal    __PROTO((int, const char *));
  136. __EXTERN long     random    __PROTO((void));
  137. __EXTERN long    _read    __PROTO((int, void *, unsigned long));
  138. __EXTERN int    readlink __PROTO((char *filename, char *linkto, int siz));
  139. __EXTERN void *    sbrk    __PROTO((__SIZE_TYPEDEF__));
  140. __EXTERN void *    _sbrk    __PROTO((long));
  141. __EXTERN int    setegid    __PROTO((int));
  142. __EXTERN int    seteuid    __PROTO((int));
  143. __EXTERN int    setregid __PROTO((int, int));
  144. __EXTERN int    setreuid __PROTO((int, int));
  145. __EXTERN char *    setstate __PROTO((char *arg_state));
  146. __EXTERN void    sigpause __PROTO((long mask));
  147. __EXTERN void    srandom    __PROTO((unsigned int seed));
  148. __EXTERN int    stime    __PROTO((long *));
  149. __EXTERN int    symlink __PROTO((const char *oldname, const char *newname));
  150. __EXTERN long    tell    __PROTO((int));
  151. __EXTERN void    usleep    __PROTO((unsigned long));
  152. __EXTERN int    vfork    __PROTO((void));
  153. __EXTERN long    _write    __PROTO((int, const void *, unsigned long));
  154.  
  155. #ifndef __MINT__
  156. #define lread _read    /* backwards compatibility, likely to go away */
  157. #define lwrite _write    /* backwards compatibility, likely to go away */
  158. #endif /* __MINT__ */
  159.  
  160. #endif    /* _POSIX_SOURCE */
  161.  
  162. #ifdef __SOZOBON__
  163. #define lsbrk _sbrk    /* backwards compatibility, don't use */
  164. #endif
  165.  
  166. #if defined (_BSD_SOURCE) && !defined(_POSIX_SOURCE)
  167. #define getpgrp _bsd_getpgrp
  168. #define setpgrp _bsd_setpgrp
  169. #else /* not _BSD_SOURCE */
  170. __EXTERN _PID_T    getpgrp    __PROTO((void));
  171. #ifndef _POSIX_SOURCE
  172. __EXTERN int    setpgrp    __PROTO((void));
  173. #endif /* _POSIX_SOURCE */
  174. #endif /* not _BSD_SOURCE */
  175. __EXTERN int    setpgid __PROTO((_PID_T, _PID_T));
  176. __EXTERN int    setsid __PROTO((void));
  177. __EXTERN _PID_T    tcgetpgrp    __PROTO((int fd));
  178. __EXTERN int    tcsetpgrp    __PROTO((int fd, _PID_T pgrp));
  179.  
  180. #if defined(__cplusplus)
  181. }
  182. #endif
  183.  
  184. #endif /* _UNISTD_H */
  185.